package cn.itcast.service;


import cn.itcast.entity.PageResult;
import cn.itcast.pojo.CheckItem;
import cn.itcast.pojo.Role;
import cn.itcast.pojo.User;

import java.util.List;

public interface UserService {

    /**
     * 用户登录校验
     * @param userName
     * @return
     */
    User userLogin(String userName);

    /**
     * 分页查询用户信息
     *
     * @return
     */
    PageResult findPageUser(Integer page , Integer pageSize,String queryString);


    /**
     * 添加用户
     * @param user
     */
    Boolean insertUser(User user,Integer[] roleIds);

    /**
     * 修改用户信息
     * @param user
     */
    Boolean updateUser(User user, Integer[] roleIds);


    /**
     * 删除用户信息
     *
     * @param id
     */
    void deleteUser(Integer id);

    /**
     * 根据id查询用户信息
     * @param id
     * @return
     */
    User findById(Integer id);


    /**
     * 查询所有角色信息
     * @return
     */
    List<Role> findAllRole();


    /**
     * 模糊查询数据
     * @param currentPage
     * @param pageSize
     * @param queryString
     * @return
     */
    PageResult findUser(Integer currentPage, Integer pageSize, String queryString);


    /**
     * 查询检查组关联的检查项信息
     * @param id
     * @return
     */
    List<CheckItem> findCheckItemById(Integer id);

    Integer[] findRoleId(Integer id);
}
